package net.lcheng.service;

import net.lcheng.commons.utils.PageList;
import net.lcheng.model.PCategory;

import java.util.Date;
import java.util.List;

/**
 * Created by zwr on 2016/6/27 0027.
 */
public interface CategoryService {
    /**
     * 商品分类查询
     * @param pageIndex
     * @param pageSize
     * @return zwr
     */
    PageList<PCategory> getCategoryByStatus(int pageIndex, int pageSize);
    /**
     * 添加商品分类
     * @param categoryName
     * @param categoryImage
     * @param topCategoryId 一级父类id
     * @param secondCategoryId 二级父类id
     * @param orderNum
     * @param summary
     * @return zwr
     */
    int insert( String categoryName, String categoryImage,String topCategoryId,String secondCategoryId,Integer orderNum, String summary);
    /**
     * 商品分类根据id获取数据修改
     * @param id
     * @return zwr
     */
    PCategory getByCategoryId(String id);

//    int modify( String categoryName, String categoryImage, String parentCategoryId,  Integer orderNum, String topCategoryId,String secondCategoryId);

    int updateStatus(String Id,int Status);

    /**
     * 由parentCategoryId获取一级分类
     * @param parentCategoryId
     * @return
     */
    List<PCategory> getChildCategoryByParentCategoryId(String parentCategoryId);
    /**
     * 由parentCategoryId获取二级分类
     * @param categoryId
     * @return
     */
    List<PCategory> getCategoryId(String categoryId);


    List<PCategory> findCategoryListByParentCategoryId(String parentCategoryId);

    /***
     * 编辑商品分类
     * @param categoryId
     * @param categoryName
     * @param categoryImage
     * @param topCategoryId
     * @param orderNum
     * @param secondCategoryId
     * @param summary
     * @return
     */
    int modify(String categoryId,String categoryName, String categoryImage, String topCategoryId, Integer orderNum, String secondCategoryId, String summary);
    /**
     * 获取父分类名数组（包含自己）
     * @return
     */
    List<String> getParentCategoryName(String categoryId);
}
